

let optionList = {
    // 列表页：统一配置【表格】样式
    defaultListTableOption: {
        border: true,   // 是否带有纵向边框
        menu: true,    // 是否有操作栏
        index: false,   // 是否有序号
        indexLabel: '序号', // 序号列名
        stripe: true,   // 是否为斑马纹
        selection: false,   // 是否有选择框
        menuAlign: 'center',    // 操作栏按钮的对齐方式: left/center/right
        align: 'center',    // 对齐方式: left/center/right
        addBtn: false,  // 表格新增按钮
        viewBtn: false, // 表格查看按钮
        searchBtn: false,   // 表格搜索按钮
        searchShow: false,  // 表格搜索首次是否展示
        calcHeight: 10, // 表格高度会配合此参数来调节范围
        searchMenuSpan: 3,
        highlightCurrentRow: true,  // 是否要高亮当前行
        refreshBtn: false,  // 表格刷新数据按钮
        columnBtn: false,   // 表格列操作按钮
        editBtn: false, // 表格修改按钮
        delBtn: false,  // 表格删除按钮
        menuWidth: 100, // 操作栏宽度
    },
    // 列表页：统一配置【表单】样式 (准确来说，是给高级查询的表单配置的)
    defaultListFormOption: {
        labelPosition: "right", // 标题位置: left/right/top
        labelWidth: 100,    // 标题宽度
        gutter: 0,  // 栅格间隔
        menuBtn: false, // 表单操作栏
        submitBtn: false,   // 提交按钮
        submitText: "提交", // 提交按钮文案
        emptyBtn: false,    // 清空按钮
        emptyText: "清空",  // 清空按钮文案
        menuPosition: "center", // 设置表单操作按钮的位置
    },
    // 详情页：统一配置【表格】样式
    defaultDetailTableOption: {
        border: true,   // 是否带有纵向边框
        menu: true,    // 是否有操作栏
        index: false,   // 是否有序号
        indexLabel: '序号', // 序号列名
        stripe: true,   // 是否为斑马纹
        selection: false,   // 是否有选择框
        menuAlign: 'center',    // 操作栏按钮的对齐方式: left/center/right
        align: 'center',    // 对齐方式: left/center/right
        addBtn: false,  // 表格新增按钮
        viewBtn: false, // 表格查看按钮
        searchBtn: false,   // 表格搜索按钮
        searchShow: false,  // 表格搜索首次是否展示
        calcHeight: 10, // 表格高度会配合此参数来调节范围
        searchMenuSpan: 3,
        highlightCurrentRow: true,  // 是否要高亮当前行
        refreshBtn: false,  // 表格刷新数据按钮
        columnBtn: false,   // 表格列操作按钮
        editBtn: false, // 表格修改按钮
        delBtn: false,  // 表格删除按钮
        menuWidth: 100, // 操作栏宽度
    },
    // 详情页：统一配置【表单】样式
    defaultDetailFormOption: {
        labelPosition: "right", // 标题位置: left/right/top
        labelWidth: 160,    // 标题宽度
        gutter: 0,  // 栅格间隔
        menuBtn: false, // 表单操作栏
        submitBtn: false,   // 提交按钮
        submitText: "提交", // 提交按钮文案
        emptyBtn: false,    // 清空按钮
        emptyText: "清空",  // 清空按钮文案
        menuPosition: "center", // 设置表单操作按钮的位置
    }
}

/**
 * 获取默认avue配置项
 * @param {Object} option avue配置项
 * @param {String} type 配置项类型
 */
export default function (option, type) {
    let defaultOption = JSON.parse(JSON.stringify(optionList[type]))
    for(let key in defaultOption) {
        if (option[key] === undefined && defaultOption[key] !== undefined) {
            option[key] = defaultOption[key]
        }
    }
    return option
}